home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / print / 24hershy.zip / HRPL_R.GSF < prev    next >
Text File  |  1991-05-16  |  9KB  |  214 lines

  1. %!
  2. % Common definitions for the Hershey fonts.
  3.  
  4. /MakeHersheyFont where
  5.  { pop 80 string
  6.     { currentfile 1 index readline pop
  7.        (%END) eq { exit } if
  8.     } loop pop
  9.  } if
  10.  
  11. userdict begin
  12. /HersheyBuildDict 10 dict def
  13.  
  14. /BuildHersheyChar {
  15.     exch begin
  16.         PenWidth setlinewidth
  17.         Encoding exch get
  18.         dup CharData exch known not { pop /.notdef } if
  19.         CharData exch get
  20.     end
  21.     /cd exch def
  22.  
  23.     /llx 99 def /lly 99 def /urx -99 def /ury -99 def
  24.     true
  25.  
  26.     cd 2 get {
  27.         exch {
  28.             dup 32 eq {
  29.                 pop true
  30.             } {
  31.                 82 sub cd 0 get sub
  32.  
  33.                 dup llx lt {
  34.                     dup /llx exch def
  35.                 } if
  36.                 dup urx gt {
  37.                     dup /urx exch def
  38.                 } if
  39.                 pop false
  40.             } ifelse
  41.         } {
  42.             neg 91 add
  43.  
  44.             dup lly lt {
  45.                 dup /lly exch def
  46.             } if
  47.             dup ury gt {
  48.                 dup /ury exch def
  49.             } if
  50.             pop true
  51.         } ifelse
  52.     } forall pop
  53.  
  54.     cd 1 get cd 0 get sub 0 llx 1 sub lly 1 sub urx 1 add ury 1 add
  55.     setcachedevice
  56.  
  57.     /domove true def
  58.     true
  59.  
  60.     cd 2 get {
  61.         exch {
  62.             dup 32 eq {
  63.                 pop true
  64.                 /domove true def
  65.             } {
  66.                 82 sub cd 0 get sub
  67.                 false
  68.             } ifelse
  69.         } {
  70.             neg 91 add
  71.             domove {
  72.                 moveto
  73.                 /domove false def
  74.             } {
  75.                 lineto
  76.             } ifelse
  77.             true
  78.         } ifelse
  79.     } forall pop
  80.  
  81.     1 setmiterlimit 1 setlinejoin 1 setlinecap
  82.     stroke
  83. } bind def
  84.  
  85. /MakeHersheyFont {
  86.     10 dict dup begin
  87.     exch /ItalicAngle exch def
  88.     exch /PenWidth exch def
  89.     exch /FontName exch def
  90.     exch /CharData exch def
  91.  
  92.     /FontType 3 def
  93.     /FontMatrix 
  94.         [1 33 div
  95.         0
  96.         ItalicAngle neg dup sin exch cos div 33 div
  97.         1 33 div
  98.         0 0] def
  99.     /Encoding StandardEncoding def
  100.     /BuildChar {HersheyBuildDict begin BuildHersheyChar end} def
  101.     /FontBBox [-10 -10 30 30] def
  102.  
  103.     FontName end exch definefont
  104. } bind def
  105. end        % userdict
  106. %END
  107.  
  108. 150 dict dup begin
  109. /hyphen [-6 6 (NRVR)] def
  110. /bar [-4 4 (RBRb)] def
  111. /periodcentered [-5 5 (RQQRRSSRRQ)] def
  112. /numbersign [-10 11 (SBLb YBRb LOZO KUYU)] def
  113. /currency [-11 11 (IIJKKOKUJYI[ [IZKYOYUZY[[ IIKJOKUKYJ[I I[KZOYUYYZ[[)] def
  114. /bullet [-2 2 (QPPQPSQTSTTSTQSPQP RQQRRSSRRQ)] def
  115. /slash [-7 7 (K^YF)] def
  116. /backslash [-7 7 (KFY^)] def
  117. /tilde [-8 8 (LTLRMPOPUSWSXR LRMQOQUTWTXRXP)] def
  118. /bracketleft [-7 7 (OBOb PBPb OBVB ObVb)] def
  119. /bracketright [-7 7 (TBTb UBUb NBUB NbUb)] def
  120. /braceleft [-7 7 (TBRCQDPFPHQJRKSMSOQQ RCQEQGRISJTLTNSPORSTTVTXSZR[Q]Q_Ra QSSUSWRYQZP\\P^Q`RaTb)] def
  121. /braceright [-7 7 (PBRCSDTFTHSJRKQMQOSQ RCSESGRIQJPLPNQPURQTPVPXQZR[S]S_Ra SSQUQWRYSZT\\T^S`RaPb)] def
  122. /less [-12 12 (ZIJRZ[)] def
  123. /greater [-12 12 (JIZRJ[)] def
  124. /asciitilde [-12 12 (IUISJPLONOPPTSVTXTZS[Q ISJQLPNPPQTTVUXUZT[Q[O)] def
  125. /asciicircum [-11 11 (JTROZT JTRPZT)] def
  126. /percent [-12 12 ([FI[ NFPHPJOLMMKMIKIIJGLFNFPGSHVHYG[F WTUUTWTYV[X[ZZ[X[VYTWT)] def
  127. /at [-13 14 (WNVLTKQKOLNMMPMSNUPVSVUUVS QKOMNPNSOUPV WKVSVUXVZV\\T]Q]O\\L[JYHWGTFQFNGLHJJILHOHRIUJWLYNZQ[T[WZYYZX XKWSWUXV)] def
  128. /section [-8 8 (UITJUKVJVIUGSFQFOGNINKOMQOVR OMTPVRWTWVVXTZ PNNPMRMTNVPXU[ NVSYU[V]V_UaSbQbOaN_N^O]P^O_)] def
  129. /dagger [-8 8 (RFQHRJSHRF RFRb RQQTRbSTRQ LMNNPMNLLM LMXM TMVNXMVLTM)] def
  130. /daggerdbl [-8 8 (RFQHRJSHRF RFRT RPQRSVRXQVSRRP RTRb R^Q`RbS`R^ LMNNPMNLLM LMXM TMVNXMVLTM L[N\\P[NZL[ L[X[ T[V\\X[VZT[)] def
  131. /A [-9 9 (RFJ[ RIK[J[ RIY[Z[ RFZ[ MUWU LVXV)] def
  132. /B [-9 9 (LFL[ MGMZ LFTFWGXHYJYMXOWPTQ MGTGWHXJXMWOTP MPTPWQXRYTYWXYWZT[L[ MQTQWRXTXWWYTZMZ)] def
  133. /C [-9 10 (ZKYIWGUFQFOGMILKKNKSLVMXOZQ[U[WZYXZV ZKYKXIWHUGQGOHMKLNLSMVOYQZUZWYXXYVZV)] def
  134. /D [-9 10 (LFL[ MGMZ LFSFVGXIYKZNZSYVXXVZS[L[ MGSGVHWIXKYNYSXVWXVYSZMZ)] def
  135. /E [-8 9 (MFM[ NGNZ MFYF NGYGYF NPTPTQ NQTQ NZYZY[ M[Y[)] def
  136. /F [-8 8 (MFM[ NGN[M[ MFYF NGYGYF NPTPTQ NQTQ)] def
  137. /G [-9 10 (ZKYIWGUFQFOGMILKKNKSLVMXOZQ[U[WZYXZVZRUR ZKYKXIWHUGQGOHNIMKLNLSMVNXOYQZUZWYXXYVYSUSUR)] def
  138. /H [-10 10 (KFK[ KFLFL[K[ YFXFX[Y[ YFY[ LPXP LQXQ)] def
  139. /I [-3 4 (RFR[S[ RFSFS[)] def
  140. /J [-7 8 (VFVVUYSZQZOYNVMV VFWFWVVYUZS[Q[OZNYMV)] def
  141. /K [-9 10 (LFL[M[ LFMFM[ ZFYFMR ZFMS POY[Z[ QOZ[)] def
  142. /L [-8 7 (MFM[ MFNFNZ NZYZY[ M[Y[)] def
  143. /M [-11 11 (JFJ[ KKK[J[ KKR[ JFRX ZFRX YKR[ YKY[Z[ ZFZ[)] def
  144. /N [-10 10 (KFK[ LIL[K[ LIY[ KFXX XFXX XFYFY[)] def
  145. /O [-10 10 (PFNGLIKKJNJSKVLXNZP[T[VZXXYVZSZNYKXIVGTFPF QGNHLKKNKSLVNYQZSZVYXVYSYNXKVHSGQG)] def
  146. /P [-9 9 (LFL[ MGM[L[ LFUFWGXHYJYMXOWPUQMQ MGUGWHXJXMWOUPMP)] def
  147. /Q [-10 10 (PFNGLIKKJNJSKVLXNZP[T[VZXXYVZSZNYKXIVGTFPF QGNHLKKNKSLVNYQZSZVYXVYSYNXKVHSGQG SXX]Y] SXTXY])] def
  148. /R [-9 9 (LFL[ MGM[L[ LFTFWGXHYJYMXOWPTQMQ MGTGWHXJXMWOTPMP RQX[Y[ SQY[)] def
  149. /S [-9 9 (YIWGTFPFMGKIKKLMMNOOTQVRWSXUXXWYTZPZNYMXKX YIWIVHTGPGMHLILKMMONTPVQXSYUYXWZT[P[MZKX)] def
  150. /T [-7 8 (RGR[ SGS[R[ LFYFYG LFLGYG)] def
  151. /U [-10 10 (KFKULXNZQ[S[VZXXYUYF KFLFLUMXNYQZSZVYWXXUXFYF)] def
  152. /V [-9 9 (JFR[ JFKFRX ZFYFRX ZFR[)] def
  153. /W [-12 12 (GFM[ GFHFMX RFMX RIM[ RIW[ RFWX ]F\\FWX ]FW[)] def
  154. /X [-9 9 (KFX[Y[ KFLFY[ YFXFK[ YFL[K[)] def
  155. /Y [-8 9 (KFRPR[S[ KFLFSP ZFYFRP ZFSPS[)] def
  156. /Z [-9 9 (XFK[ YFL[ KFYF KFKGXG LZYZY[ K[Y[)] def
  157. /a [-9 9 (WMW[X[ WMXMX[ WPUNSMPMNNLPKSKULXNZP[S[UZWX WPSNPNNOMPLSLUMXNYPZSZWX)] def
  158. /b [-9 9 (LFL[M[ LFMFM[ MPONQMTMVNXPYSYUXXVZT[Q[OZMX MPQNTNVOWPXSXUWXVYTZQZMX)] def
  159. /c [-8 8 (XPVNTMQMONMPLSLUMXOZQ[T[VZXX XPWQVOTNQNOONPMSMUNXOYQZTZVYWWXX)] def
  160. /d [-9 9 (WFW[X[ WFXFX[ WPUNSMPMNNLPKSKULXNZP[S[UZWX WPSNPNNOMPLSLUMXNYPZSZWX)] def
  161. /e [-8 8 (MTXTXQWOVNTMQMONMPLSLUMXOZQ[T[VZXX MSWSWQVOTNQNOONPMSMUNXOYQZTZVYWWXX)] def
  162. /f [-5 7 (WFUFSGRJR[S[ WFWGUGSH TGSJS[ OMVMVN OMONVN)] def
  163. /g [-9 9 (XMWMW\\V_U`SaQaO`N_L_ XMX\\W_UaSbPbNaL_ WPUNSMPMNNLPKSKULXNZP[S[UZWX WPSNPNNOMPLSLUMXNYPZSZWX)] def
  164. /h [-9 9 (LFL[M[ LFMFM[ MQPNRMUMWNXQX[ MQPORNTNVOWQW[X[)] def
  165. /i [-3 4 (RFQGQHRISITHTGSFRF RGRHSHSGRG RMR[S[ RMSMS[)] def
  166. /j [-3 4 (RFQGQHRISITHTGSFRF RGRHSHSGRG RMRbSb RMSMSb)] def
  167. /k [-9 8 (LFL[M[ LFMFM[ XMWMMW XMMX PTV[X[ QSX[)] def
  168. /l [-3 4 (RFR[S[ RFSFS[)] def
  169. /m [-14 15 (GMG[H[ GMHMH[ HQKNMMPMRNSQS[ HQKOMNONQORQR[S[ SQVNXM[M]N^Q^[ SQVOXNZN\\O]Q][^[)] def
  170. /n [-9 9 (LML[M[ LMMMM[ MQPNRMUMWNXQX[ MQPORNTNVOWQW[X[)] def
  171. /o [-8 9 (QMONMPLSLUMXOZQ[T[VZXXYUYSXPVNTMQM QNOONPMSMUNXOYQZTZVYWXXUXSWPVOTNQN)] def
  172. /p [-9 9 (LMLbMb LMMMMb MPONQMTMVNXPYSYUXXVZT[Q[OZMX MPQNTNVOWPXSXUWXVYTZQZMX)] def
  173. /q [-9 9 (WMWbXb WMXMXb WPUNSMPMNNLPKSKULXNZP[S[UZWX WPSNPNNOMPLSLUMXNYPZSZWX)] def
  174. /r [-6 7 (OMO[P[ OMPMP[ PSQPSNUMXM PSQQSOUNXNXM)] def
  175. /s [-7 8 (XPWNTMQMNNMPNRPSUUWV VUWWWXVZ WYTZQZNY OZNXMX XPWPVN WOTNQNNO ONNPOR NQPRUTWUXWXXWZT[Q[NZMX)] def
  176. /t [-5 5 (RFR[S[ RFSFS[ OMVMVN OMONVN)] def
  177. /u [-9 9 (LMLWMZO[R[TZWW LMMMMWNYPZRZTYWW WMW[X[ WMXMX[)] def
  178. /v [-7 7 (LMR[ LMMMRY XMWMRY XMR[)] def
  179. /w [-11 11 (IMN[ IMJMNX RMNX RPN[ RPV[ RMVX [MZMVX [MV[)] def
  180. /x [-8 8 (LMW[X[ LMMMX[ XMWML[ XMM[L[)] def
  181. /y [-7 7 (LMR[ LMMMRY XMWMRYNb XMR[ObNb)] def
  182. /z [-8 8 (VNL[ XMNZ LMXM LMLNVN NZXZX[ L[X[)] def
  183. /space [-4 4 ()] def
  184. /zero [-10 10 (QFNGLJKOKRLWNZQ[S[VZXWYRYOXJVGSFQF OGMJLOLRMWOZ NYQZSZVY UZWWXRXOWJUG VHSGQGNH)] def
  185. /one [-10 10 (NJPISFS[ NJNKPJRHR[S[)] def
  186. /two [-10 10 (LKLJMHNGPFTFVGWHXJXLWNUQL[ LKMKMJNHPGTGVHWJWLVNTQK[ LZYZY[ K[Y[)] def
  187. /three [-10 10 (MFXFQO MFMGWG WFPO QNSNVOXQYTYUXXVZS[P[MZLYKWLW POSOVPXS TOWQXTXUWXTZ XVVYSZPZMYLW OZLX)] def
  188. /four [-10 10 (UIU[V[ VFV[ VFKVZV UILV LUZUZV)] def
  189. /five [-10 10 (MFLO NGMN MFWFWG NGWG MNPMSMVNXPYSYUXXVZS[P[MZLYKWLW LOMOONSNVOXR TNWPXSXUWXTZ XVVYSZPZMYLW OZLX)] def
  190. /six [-10 10 (VGWIXIWGTFRFOGMJLOLTMXOZR[S[VZXXYUYTXQVOSNRNOOMQ WHTGRGOH PGNJMOMTNXQZ MVOYRZSZVYXV TZWXXUXTWQTO XSVPSOROOPMS QONQMT)] def
  191. /seven [-10 10 (KFYFO[ KFKGXG XFN[O[)] def
  192. /eight [-10 10 (PFMGLILKMMNNPOTPVQWRXTXWWYTZPZMYLWLTMRNQPPTOVNWMXKXIWGTFPF NGMIMKNMPNTOVPXRYTYWXYWZT[P[MZLYKWKTLRNPPOTNVMWKWIVG WHTGPGMH LXOZ UZXX)] def
  193. /nine [-10 10 (WPURRSQSNRLPKMKLLINGQFRFUGWIXMXRWWUZR[P[MZLXMXNZ WMVPSR WNUQRRQRNQLN PRMPLMLLMIPG LKNHQGRGUHWK SGVIWMWRVWTZ UYRZPZMY)] def
  194. /period [-5 6 (RXQYQZR[S[TZTYSXRX RYRZSZSYRY)] def
  195. /comma [-5 6 (TZS[R[QZQYRXSXTYT\\S^Q_ RYRZSZSYRY S[T\\ TZS^)] def
  196. /colon [-5 6 (RMQNQORPSPTOTNSMRM RNROSOSNRN RXQYQZR[S[TZTYSXRX RYRZSZSYRY)] def
  197. /semicolon [-5 6 (RMQNQORPSPTOTNSMRM RNROSOSNRN TZS[R[QZQYRXSXTYT\\S^Q_ RYRZSZSYRY S[T\\ TZS^)] def
  198. /exclam [-5 6 (RFRTST RFSFST RXQYQZR[S[TZTYSXRX RYRZSZSYRY)] def
  199. /question [-9 10 (LKLJMHNGQFTFWGXHYJYLXNWOUPRQ LKMKMJNHQGTGWHXJXLWNUORP MIPG UGXI XMTP RPRTSTSP RXQYQZR[S[TZTYSXRX RYRZS